<template>
    <div>
        <mbx />
        <div id="box"></div>
    </div>
</template>

<script>
/**
 * 名门望组：黄小波
 * 对应模块：数据统计模块
 * 思路分析
 * 1.接口请求：接口文档：数据统计表，请求路径：reports/type/1，请求方法：get，
 * 2.样式布局：数据统计模块的面包屑导航组件的引入，element-ui框架的表格进行数据统计模块的渲染，
 * 3.功能分析：echars官网折线图下载、导入、解构数据混入、渲染到视图上
*/
import mbx from '@/components/mbx.vue'
import * as echarts from 'echarts';
import { chaImg } from '@/utils/order/api'
export default {
    components: { mbx },
    async mounted() {
        /* 请求基于时间统计的折线图接口 */
        let res = await chaImg();
        console.log(res)
        var chartDom = document.getElementById('box');
        var myChart = echarts.init(chartDom);
        var option;

        option = {
            title: {
                text: 'Stacked Area Chart'
            },
            tooltip: {
                trigger: 'axis',
                axisPointer: {
                    type: 'cross',
                    label: {
                        backgroundColor: '#6a7985'
                    }
                }
            },
            legend: {
                data: ['Email', 'Union Ads', 'Video Ads', 'Direct', 'Search Engine']
            },
            toolbox: {
                feature: {
                    saveAsImage: {}
                }
            },
            grid: {
                left: '3%',
                right: '4%',
                bottom: '3%',
                containLabel: true
            },
            xAxis: [
                {
                    type: 'category',
                    boundaryGap: false,
                    data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
                }
            ],
            yAxis: [
                {
                    type: 'value'
                }
            ],
            series: [
                {
                    name: 'Email',
                    type: 'line',
                    stack: 'Total',
                    areaStyle: {},
                    emphasis: {
                        focus: 'series'
                    },
                    data: [120, 132, 101, 134, 90, 230, 210]
                },
                {
                    name: 'Union Ads',
                    type: 'line',
                    stack: 'Total',
                    areaStyle: {},
                    emphasis: {
                        focus: 'series'
                    },
                    data: [220, 182, 191, 234, 290, 330, 310]
                },
                {
                    name: 'Video Ads',
                    type: 'line',
                    stack: 'Total',
                    areaStyle: {},
                    emphasis: {
                        focus: 'series'
                    },
                    data: [150, 232, 201, 154, 190, 330, 410]
                },
                {
                    name: 'Direct',
                    type: 'line',
                    stack: 'Total',
                    areaStyle: {},
                    emphasis: {
                        focus: 'series'
                    },
                    data: [320, 332, 301, 334, 390, 330, 320]
                },
                {
                    name: 'Search Engine',
                    type: 'line',
                    stack: 'Total',
                    label: {
                        show: true,
                        position: 'top'
                    },
                    areaStyle: {},
                    emphasis: {
                        focus: 'series'
                    },
                    data: [820, 932, 901, 934, 1290, 1330, 1320]
                }
            ]
        };

        option && myChart.setOption({...option,...res.data});
    },
}
</script>

<style lang="scss" scoped>
#box {
    width: 100%;
    height: 500px;
    // background-color: red;
    margin-top: 20px;
}
</style>